How to Configure Odoo 14 in Visual Studio Code on Ubuntu 20.04: A Step-by-Step Guide
Introduction
Odoo is a powerful, open-source business management software suite that encompasses a wide range of applications, from CRM and eCommerce to accounting and project management. If you’re looking to develop or customize Odoo modules, having a robust development environment is crucial. Visual Studio Code (VS Code) is a popular and versatile code editor that can greatly enhance your Odoo development experience. In this step-by-step guide, we’ll walk you through the process of configuring Odoo 14 in Visual Studio Code on Ubuntu 20.04.
Prerequisites
Before we begin, make sure you have the following prerequisites in place:
1.Ubuntu 20.04: You should have a working Ubuntu 20.04 installation.
2.Visual Studio Code: If you don’t have it installed, you can download and install it from [Visual Studio Code’s official website](https://code.visualstudio.com/).
3.Odoo 14: Ensure that you have Odoo 14 installed on your system. You can follow the official Odoo installation guide to set it up. If you haven’t installed Odoo yet, follow the steps provided [here](https://www.odoo.com/documentation/14.0/setup/install.html).
4.Python 3.x: Odoo is primarily written in Python, so Python 3.x is essential. You can check your Python version with `python3 –version`.
5.Git: You’ll need Git for version control and obtaining Odoo modules from repositories.
6.Odoo Addons: Make sure you have some Odoo addons or modules that you’d like to work on. These addons should be placed in your Odoo instance’s custom addons directory.
Step 1: Install Required VS Code Extensions
To make your Odoo development process smoother, you’ll need to install some Visual Studio Code extensions. Open VS Code and go to the Extensions view by clicking on the square icon in the sidebar or using the keyboard shortcut `Ctrl+Shift+X`. Search for and install the following extensions:
- Python: This extension provides essential Python support for VS Code, including debugging and linting.
- XML Tools: XML is a key part of Odoo module development, and this extension enhances XML editing capabilities.
- EditorConfig for VS Code: EditorConfig helps maintain consistent coding styles. Many Odoo projects use an `.editorconfig` file, so this extension is handy for adhering to project coding standards.
- Docker: If you’re using Docker for your Odoo instance, this extension will help you manage Docker containers from within VS Code.
Step 2: Open Your Odoo Project in VS Code
Now, it’s time to open your Odoo project in Visual Studio Code. Follow these steps:
1. Open VS Code.
2. Click on File > Open Folder and navigate to your Odoo project directory, where your custom addons are located. Open the project folder.
3. You should now see your project structure in the VS Code file explorer.
 Step 3: Configure the Python Interpreter
To ensure that VS Code uses the correct Python interpreter for your Odoo project, follow these steps:
1. Open a Python file (e.g., one of your Odoo module files) in VS Code.
2. Look in the lower-left corner of the VS Code window, and you’ll see “Select Python Interpreter.” Click on it.
3. A list of available Python interpreters will appear. Choose the one that corresponds to your Odoo installation. This should be a Python 3.x interpreter.
4. If your interpreter isn’t listed, click on “Enter interpreter path” and provide the path to your Python interpreter (e.g., `/usr/bin/python3`).
Step 4: Create a VS Code Workspace
A VS Code workspace is a project configuration that stores settings, preferences, and the structure of your project. To create a workspace for your Odoo project:
1. Click on File > Save Workspace As….
2. Choose a location for your workspace file and give it a descriptive name (e.g., `odoo14_workspace.code-workspace`).
3. Your workspace file will be created, and you’ll see a new file with the `.code-workspace` extension.
Step 5: Set Up Odoo Configuration
To develop Odoo modules effectively, you need to configure Odoo’s development environment in VS Code. This includes setting up the Odoo configuration file and the server.
1. Create a new directory in your Odoo project folder for storing server-related files, e.g., `server`. Inside this directory, create a `config` directory and place your Odoo configuration file (usually named `odoo.conf`) there.
2. In your VS Code workspace, create a new file named `odoo-server.sh`. This script will be used to run your Odoo server. Make sure it’s executable by running `chmod +x odoo-server.sh` in the terminal.
3. Edit your `odoo-server.sh` file to include the command for running your Odoo server. It should look something like this:
#!/bin/bash
../path/to/your/odoo-bin -c ./config/odoo.conf
Replace `../path/to/your/odoo-bin` with the actual path to your `odoo-bin` script, which is located in your Odoo installation directory.
Step 6: Configure Debugger for Odoo
Debugging is a crucial part of Odoo development, and you can configure the VS Code debugger for Odoo.
1. Open a Python file in your Odoo project.
2. Click on the bug icon in the sidebar, or press `F5` on your keyboard. This will create a `launch.json` file in your `.vscode` directory.
3. Open the `launch.json` file and modify it to include a new configuration for Odoo debugging. Your configuration should look something like this:
{
"version": "0.2.0",
"configurations": [
{
"name": "Odoo",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/path/to/your/odoo-bin",
"args": ["-c", "${workspaceFolder}/server/config/odoo.conf"],
"pydevdPath": "${env:HOME}/.vscode/extensions/ms-python.python-2021.5.83158/pythonFiles/pyvsc-run-isolated.py",
"stopOnEntry": false,
"redirectOutput": true,
"console": "internalConsole",
"cwd": "${workspaceFolder}",
"env": {},
"envFile": "${workspaceFolder}/.env",
"debugOptions": [
"RedirectOutput",
"DjangoDebugging"
]
}
]
}program": "${workspaceFolder}/path/to/your/odoo-bin",
"args": ["-c", "${workspaceFolder}/server/config/odoo.conf"],
"pydevdPath": "${env:HOME}/.vscode/extensions/ms-python.python-2021.5.83158/pythonFiles/pyvsc-run-isolated.py",
"stopOnEntry": false,
"redirectOutput": true,
"console": "internalConsole",
"cwd": "${workspaceFolder}",
"env": {},
"envFile": "${workspaceFolder}/.env",
"debugOptions": [
"RedirectOutput",
"DjangoDebugging"
]
}
]
}
Make sure to replace `”program”` with the actual path to your `odoo-bin` script. The `”args”` option points to your Odoo configuration file. Adjust any other settings as needed.
Step 7: Start Debugging
With the debugger configured, you can now start debugging your Odoo modules. Set breakpoints in your code by clicking in the left margin of the editor where you want to break execution. Then, press `F5` or click the green play button in the top menu to start debugging.
- When the debugger starts, Odoo will launch with the configuration specified in your `odoo.conf` file.
- Navigate to the Odoo application where you want to test your module, and the debugger will pause execution at your breakpoints, allowing you to inspect variables, step through code, and troubleshoot issues.
Step 8: Version Control with Git
Version control is crucial in software development, and Git is a popular choice. Integrate Git into your Odoo project in VS Code:
1. Initialize a Git repository in your project folder by running `git init` in your project’s root directory.
2. Add your files to the Git repository by running `git add .` to stage all changes.
3. Commit your changes with `git commit -m “Initial commit”` (replace the message with something descriptive).
4. Connect your project to a remote Git repository on platforms like GitHub or GitLab if you want to collaborate with others.
Step 9: Customize VS Code Settings
To enhance your development experience further, customize your Visual Studio Code settings:
- EditorConfig: If your Odoo project follows a specific coding style, make sure your `.editorconfig` file is set up correctly. VS Code will automatically apply these settings to your project.
- Extensions: Explore VS Code extensions related to Python development, database connections, and Docker integration, and install those that can boost your productivity.
- Keyboard Shortcuts: Customize your keyboard shortcuts in VS Code to streamline your workflow. You can do this by going to File > Preferences > Keyboard Shortcuts.
Step 10: Collaborate and Share
Collaboration is often a part of Odoo development, especially when working on larger projects. VS Code offers several collaboration tools and extensions to help you work effectively with your team:
- Live Share: Visual Studio Code’s Live Share extension allows you to collaborate in real-time with other developers. You can share your code and your development environment, which can be useful for pair programming or getting assistance from colleagues.
- Version Control Integration: Ensure that your version control system, such as Git, is well-integrated with VS Code. Use Git features within VS Code to manage branches, commits, and pull requests.
- Code Review: Use built-in or third-party extensions for code reviews. This can help you maintain code quality and share feedback with your team.
 Conclusion
Setting up Odoo 14 in Visual Studio Code on Ubuntu 20.04 is a powerful way to enhance your Odoo development experience. With the right extensions, configuration, and tools in place, you’ll be better equipped to build, customize, and debug Odoo modules efficiently. By following this step-by-step guide, you can streamline your development process and collaborate effectively with your team. As you become more proficient with this development environment, you’ll be able to create robust Odoo solutions for your business needs or those of your clients. Happy coding!